package com.ruoyi.edge.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;

/**
 * 设备信息对象 edge_device
 * 
 * @author ruoyi
 * @date 2025-07-02
 */
public class EdgeDevice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 设备ID */
    private Long id;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String sourceName;

    /** 流地址 */
    @Excel(name = "拉流地址")
    private String streamUrl;

    /** 编码格式 */
    @Excel(name = "编码格式")
    private String encodeFormat;

    /** 检测间隔 */
    @Excel(name = "检测间隔")
    private String detectInterval;

    /** 识别类型 */
    @Excel(name = "识别类型")
    private String IdentifyType;

    /** 推流方式 */
    @Excel(name = "推流方式")
    private String IngestType;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date date;

    /** 启用标识 */
    @Excel(name = "启用标识")
    private String enable;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setSourceName(String sourceName) 
    {
        this.sourceName = sourceName;
    }

    public String getSourceName() 
    {
        return sourceName;
    }

    public void setStreamUrl(String streamUrl) 
    {
        this.streamUrl = streamUrl;
    }

    public String getStreamUrl() 
    {
        return streamUrl;
    }

    public void setEncodeFormat(String encodeFormat) 
    {
        this.encodeFormat = encodeFormat;
    }

    public String getEncodeFormat() 
    {
        return encodeFormat;
    }

    public void setdetectInterval(String detectInterval)
    {
        this.detectInterval = detectInterval;
    }

    public String getdetectInterval()
    {
        return 
        detectInterval;
    }

    public void setIdentifyType(String IdentifyType) 
    {
        this.IdentifyType = IdentifyType;
    }

    public String getIdentifyType() 
    {
        return IdentifyType;
    }

    public void setIngestType(String IngestType) 
    {
        this.IngestType = IngestType;
    }

    public String getIngestType() 
    {
        return IngestType;
    }

    public void setDate(Date date) 
    {
        this.date = date;
    }

    public Date getDate() 
    {
        return date;
    }

    public void setEnable(String enable) 
    {
        this.enable = enable;
    }

    public String getEnable() 
    {
        return enable;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("sourceName", getSourceName())
            .append("streamUrl", getStreamUrl())
            .append("encodeFormat", getEncodeFormat())
            .append(" detectInterval", getdetectInterval())
            .append("IdentifyType", getIdentifyType())
            .append("IngestType", getIngestType())
            .append("date", getDate())
            .append("enable", getEnable())
            .toString();
    }
}
